This invention relates to workflow management systems in general, and to automatic call distribution (ACD) systems in particular.
Workflow management systems distribute work items for processing among processing resources. An example of workflow management systems are ACD systems. ACD systems distribute communicationsxe2x80x94telephone calls, for example, whether inbound or outboundxe2x80x94for handling to any suitable ones of available communications-handling agents (whether human or artificial) according to some predefined criteria. In many existing systems, such as the Lucent Technologies Definity(copyright) ACD system, the criteria for handling the communication from the moment that the ACD system becomes aware of the communication until the communication is connected to an agent are customer-specifiable (i.e., programmable by the operator of the ACD system) via a capability called call vectoring. Normally in present-day ACD systems, when the ACD system""s controller detects that an agent has become available to handle a communication, the controller identifies all predefined communication-handling skills of the agent (usually in some order of priority) and delivers to the agent the highest-priority oldest-waiting communication that matches the agent""s highest-priority skill. Generally the only condition that results in a communication not being delivered to an available agent is that there are no communications waiting to be handled.
In many communications-handling centers, agents are members of multiple skills (i.e., multiple agent pools corresponding to different agent skills) or may be assigned work other than handling of communications. When agents are xe2x80x9cblendedxe2x80x9d across more skills or types of work, the utilization of the agents increases, but the capability of differentiating the service provided to different types of work, or to communications versus other types of work, may be diminished. When an agent becomes available, the agent can get the most appropriate work that is presently available. For example, when there are two or more types of available work, the agent can get the work requiring the better service (e.g., high-priority work, such as a telephone call) rather than the work requiring lesser service. But if there is only one type of work available, the agent is typically given that work regardless of the priority of that work compared to other types of work. Then, when the work requiring the better service becomes available, there may be no agent available and ready to handle it.
This invention is directed to solving this and other problems and disadvantages of the prior art. Generally according to the invention, a workflow manager reserves a resource for processing an anticipated work item by sending a simulated, artificial, work item to the resource before the real work item becomes available. The resource does not process the simulated work item but rather awaits the real item. When the real work item becomes available, it is substituted for the simulated work item and the resource processes it. Specifically according to the invention, managing a workflow includes anticipating a need for a resource to process a real work item, in response sending to the resource a simulated work item to reserve the resource for the real work item, and upon the real work item becoming available for processing, substituting the real work item for the simulated work item to cause the resource to process the real work item instead of the simulated work item. In response to receiving the simulated work item, the resource preferably forbears from processing the simulated work item and rather waits for receipt of the real work item, which it processes in response to the substitution of the real work item for the simulated work item. Advantageously, in anticipation of a need for a plurality of the resources, a plurality of the simulated work items are sent to the plurality of resources, and then upon each of a plurality of real work items becoming available each real work item is substituted for onexe2x80x94preferably the oldest onexe2x80x94of the plurality of simulated work items. The anticipating illustratively involves anticipating how many resources are needed, determining how many resources are available, and then making up any shortfall by sending to the resources that number of the simulated work items. Preferably, any excess of needed resources over available resources is made up by canceling that many pending simulated work items. In a system that processes work items of a plurality of classes or types, the resource reservation is effected on a per-class or per-type basis. In a system where arriving work items are enqueued and then dequeued and assigned to resourcesxe2x80x94such as an ACD system, for examplexe2x80x94the simulated work items are generated and then enqueued, dequeued, and assigned like the real work items. When a real work item arrives, it is either substituted for an enqueued simulated work item in the queue or is assigned for processing to the resource to which a dequeued simulated work item is assigned.
While the invention has been characterized in terms of functions, it encompasses both a method that embodies the function and an apparatus that performs the method. The apparatus preferably includes an effectorxe2x80x94any entity that effects the corresponding step, unlike a meansxe2x80x94for each step. The invention further encompasses a computer-readable medium containing instructions which, when executed in a computer, cause the computer to perform the method steps.
The invention allows a work-processing operation to utilize resources commensurate with the needs of high-priority work amongst work of lower priority in an environment of differentiated work and differentiated resources. This can greatly facilitate the integration of low-priority work such as back-office work, with high-priority work, such as customer communications-processing. It can help eliminate manual intervention to reallocate resources. Often, manual dispatching is too late and leads to more problems when the reallocated resources are not returned to their preferred work soon enough.
The invention is significant because it enables the realization of high service levels and high resource utilization simultaneously, without undue constraints on the organization of the work and the organization of the resources. The invention can improve customer service and reduce the burden on supervision.